package cn.sdormitory.smartdor.entity;

import cn.hutool.core.date.DatePattern;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * @className: SdWeekendAttence
 * @author: Alex
 * @date: 2024/9/19
 **/
@Data
@TableName("sd_weekend_attence")
public class SdWeekendAttence {
	
	@TableId
	@ApiModelProperty(value = "ID")
	private Long id;
	
	@ApiModelProperty(value = "设备号")
	private String deviceNo;
	
	@ApiModelProperty(value = "学号")
	private String studentNo;
	
	@ApiModelProperty(value = "出/入时间(刷脸时间)")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date accessDate;
	
	@ApiModelProperty(value = "考勤状态")
	private String attenceStatus;
	
	@ApiModelProperty(value = "缺勤处理")
	private String absenceProcessStatus;
	
	@ApiModelProperty(value = "处理人")
	private String processPerson;
	
	@ApiModelProperty(value = "处理描述")
	private String processDesc;
	
	@ApiModelProperty(value = "创建时间")
	@JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN, timezone = "GMT+8")
	private Date createTime;
	
	@ApiModelProperty(value = "修改时间")
	@JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN, timezone = "GMT+8")
	private Date modifyTime;
	
	@ApiModelProperty(value = "宿舍栋号")
	private String buildingNo;
	
	@ApiModelProperty(value = "楼层")
	private String storey;
	
	@ApiModelProperty(value = "宿舍表ID")
	private Long bdormitoryId;
	
	@ApiModelProperty(value = "宿舍号")
	private String dormitoryNo;
	
	@ApiModelProperty(value = "补卡照片")
	private String mendCardPhoto;
	
	@ApiModelProperty(value = "考勤来源：1 手动打卡 2 考勤机打卡 3 请假打卡")
	private String flag;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "学生姓名")
	private String studentName;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "学生ID")
	private String studentId;
	
	@TableField(exist = false)
	private String stuPhoto;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "班级名称")
	private String className;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "宿舍详细地址")
	private String dorAddress;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "申请单状态")
	private String applyStatus;
	
	@ApiModelProperty(value = "当前审批节点")
	@TableField(exist = false)
	private String approveNode;
	
	@ApiModelProperty(value = "当前审批人")
	@TableField(exist = false)
	private String currentApprover;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "未归原因 or 提交记录")
	private String reason;
	
	@TableField(exist = false)
	@ApiModelProperty(value = "流程实例id")
	private String processInstanceId;
}
